发言稿


今天我们要讲的论文叫Learning Spatial Fusion for Single-Shot Object Detection,是一个关于特征提取的论文,本文的核心创新点就是提出了一个ASFF算法,实现了自适应的FPN结构下不同level层的特征融合,显著提升了模型性能。


我们先简述一下这个ASFF提出的背景和动机


这是一个关于特征提取的论文。在CV中,特征提取用于从图像中提取边缘、纹理、颜色等信息,用于物体检测、图像分类和图像分割。而一个好的所以特征提取策略可以极大提高模型性能和减少计算量,因此特征提取在CV中是一个非常重要的环节。


但是一个好的特征提取策略显然不是这么容易就能让我们找到的,它肯定会面临各种各样的问题。现在我们来看一下特征提取中的一个主要挑战——多尺度问题。


PPT内容


传统上,我们有两种来解决多尺度问题的方法,一个是SSD。一个是FPN,现在请我的另一位组员来给大家讲解一下


好,现在我们终于要来讲我们的ASFF了 在作者那个时期的目标检测算法中,很多网络结构采用FPN输出多层特征来解决多尺度问题。

这就像做饭时把所有食材都丢进锅里乱炖,但单反显然并没有那么简单,热症融合也是如此。无论是YOLOv3还是RetinaNet,他们多用concatenation或element-wise的方式,结果就是,虽然食材都在锅里,但味道没融合好。

于是作者就觉得它们实在浪费资源!这好不容易用FPN提取出来的多层好特征结果被一锅乱炖结果还不好,于是他就提出了ASFF算法,这个算法的本质上就是要够更好地利用不同尺度的特征,实现高效融合,而不是一锅乱炖,以此来显著提升模型性能。


那它具体是怎么融合的呢?以ASFF-3为例,我们看看这张图。图中的绿色框描述了如何将特征进行融合。“这里,X1、X2、X3分别代表来自level 1、level 2和level 3的特征。我们用来自不同层的特征乘上权重参数α3、β3和γ3并相加,就能得到新的融合特征ASFF-3。就像调味大师一样,做酱料的时候肯定是先把酱料拌好再放进锅里,而不是直接把酱料的原材料给扔锅里,这样效果肯定更好一点


因为要使用相加这个操作,而需要相加时候的level1到level3层输出的特征图尺寸和通道数得是相同的,。这样才能确保特征图在相加时信息不丢失。也就是说,在我们把它们相加之前,我们需要对level层进重定尺寸

  • 上采样
  • 下采样
  • 1*1卷积

刚才我们说了这些参数都是由网络训练出来的,但是是要训练那肯定要有个损失函数来衡量,ASFF(Adaptively Spatial Feature Fusion)的损失ASFF的损失函数包括分类损失和回归损失。我们可以通过具体的定义和公式来解释这些损失函数及其代表的意义。


通过最小化这个损失函数,ASFF能再网络训练的过程中找出最好的权重参数,自适应地调整不同尺度特征的融合,从而提取出相对最优的特征。

训练调整权重的原理其实和BP神经网络差不多,都是链式法则,所以我在这里就不讲了